package com.achievement.domain.vo;

import com.achievement.domain.entity.CommonEntity;
import com.common.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;
import java.util.Map;

@Data
public class MeetingVO extends CommonEntity {
    /**
     * ID
     */
    @ApiModelProperty(value = "id")
    private String id;
    /**
     * 会议名称
     */
    @ApiModelProperty(value = "会议名称")
    @Excel(name = "会议名称")
    private String name;

    /**
     * 会议主题
     */
    @ApiModelProperty(value = "会议主题")
    @Excel(name = "会议主题")
    private String meetingTheme;

    /**
     * 主办单位
     */
    @ApiModelProperty(value = "主办单位")
    @Excel(name = "主办单位")
    private String operateUnit;
    /**
     * 会议位置 1国内 2国外
     */
    @ApiModelProperty(value = "会议位置 1国内 2国外")
    private String meetingScope;
    /**
     * 协办单位
     */
    @ApiModelProperty(value = "协办单位")
    @Excel(name = "协办单位")
    private String assistanceUnit;

    /**
     * 承办部门
     */
    @ApiModelProperty(value = "承办部门")
    @Excel(name = "承办部门")
    private String unitId;

    /**
     * DIVISION_ID
     */
    @ApiModelProperty(value = "DIVISION_ID")
    private String divisionId;

    /**
     * 会议类型 1国际学术会议 2国内学术会议 3省级会议 4学校会议
     */
    @ApiModelProperty(value = "会议类型 1国际学术会议 2国内学术会议 3省级会议 4学校会议")
    @Excel(name = "会议类型" ,readConverterExp = "1=国际学术会议,2=国内学术会议,3=省级会议,4=学校会议")
    private String meetingTypeId;

    /**
     * 学科门类 2科技类 1社科类
     */
    @ApiModelProperty(value = "学科门类 2科技类 1社科类")
    private String subjectClassId;

    /**
     * 学科分类 1数学 2信息科学与系统科学 3力学
     */
    @ApiModelProperty(value = "学科分类 1数学 2信息科学与系统科学 3力学")
    private String subjectId;

    /**
     * 会议地点
     */
    @ApiModelProperty(value = "会议地点")
    @Excel(name = "会议地点")
    private String meetingPlace;

    /**
     * 开始日期
     */
    @ApiModelProperty(value = "开始日期")
    @Excel(name = "开始日期")
    private String beginDate;

    /**
     * 结束日期
     */
    @ApiModelProperty(value = "结束日期")
    @Excel(name = "结束日期")
    private String endDate;

    /**
     * 会议联系人
     */
    @ApiModelProperty(value = "会议联系人")
    @Excel(name = "会议联系人")
    private String meetingContacts;

    /**
     * 会议电话
     */
    @ApiModelProperty(value = "会议电话")
    @Excel(name = "会议电话")
    private String meetingTel;

    /**
     * 会议邮箱
     */
    @ApiModelProperty(value = "会议邮箱")
    @Excel(name = "会议电邮")
    private String meetingEmail;

    /**
     * 是否形成报告或建议
     */
    @ApiModelProperty(value = "是否形成报告或建议")
    @Excel(name = "是否形成报告或建议",readConverterExp = "1=是,0=否")
    private String isFormReport;

    /**
     * 代表人数量
     */
    @ApiModelProperty(value = "代表人数量")
    @Excel(name = "代表人数量")
    private Integer personNumber;

    /**
     * 论文数量
     */
    @ApiModelProperty(value = "论文数量")
    @Excel(name = "论文数量")
    private Integer paperNumber;

    /**
     * 会议经费
     */
    @ApiModelProperty(value = "会议经费")
    @Excel(name = "会议经费")
    private Double feeTotal;

    /**
     * 经费来源
     */
    @ApiModelProperty(value = "经费来源")
    @Excel(name = "经费来源")
    private String feeSource;

    /**
     * 会议简介
     */
    @ApiModelProperty(value = "会议简介")
    @Excel(name = "简介")
    private String intro;

    /**
     * 审核状态
     */
    @ApiModelProperty(value = "审核状态")
    @Excel(name = "审核状态")
    private String checkstatus;

    /**
     * 审核时间
     */
    @ApiModelProperty(value = "审核时间")
    private String checkdate;

    /**
     * 审核人
     */
    @ApiModelProperty(value = "审核人")
    private String checker;


    /**
     * 国外代表数量
     */
    @ApiModelProperty(value = "国外代表数量")
    @Excel(name = "国外代表数量")
    private Integer foreignDeputyNumber;

    /**
     * 会议相关文档
     */
    @ApiModelProperty(value = "会议相关文档")
    private String fileIds;

    /**
     * COMPLETEDATASTATUS
     */
    @ApiModelProperty(value = "COMPLETEDATASTATUS")
    private String completedatastatus;

    private List<Map<String,String>> fileList;

    private String processInstanceId;
    private Boolean isAuditor;

    private String taskId;
}
